// 示例 1：

// 输入：[1, 2, 3, 1]
// 输出：4
// 解释：偷窃 1 号房屋(金额 = 1) ，然后偷窃 3 号房屋(金额 = 3)。
// 偷窃到的最高金额 = 1 + 3 = 4 。
// 示例 2：

// 输入：[2, 7, 9, 3, 1]
// 输出：12
// 解释：偷窃 1 号房屋(金额 = 2), 偷窃 3 号房屋(金额 = 9)，接着偷窃 5 号房屋(金额 = 1)。
// 偷窃到的最高金额 = 2 + 9 + 1 = 12 。

nums = [2, 1, 1, 2]

var rob = function (nums) {
    let len = nums.length
    let dp = []  // 当前这家能获得的最大利润
    // dp[i] = Math.max(dp[i-1],nums[i]+dp[i-2])
    dp[0] = nums[0]
    dp[1] = Math.max(nums[0], nums[1])
    if (len === 2) {
        return Math.max(dp[0], dp[1])
    }
    for (let i = 2; i < len; i++) {
        dp[i] = Math.max(dp[i - 1], nums[i] + dp[i - 2])
    }
    return dp[len - 1]
};

console.log(rob(nums));
